import prismjs from 'vite-plugin-prismjs';
import { PluginOption } from 'vite'

export default function setupPrismjs() {
  return prismjs({
    languages: [
      'bash',
      'c',
      'css',
      'csv',
      'go',
      'graphql',
      'html',
      'http',
      'java',
      'javadoc',
      'javascript',
      'js',
      'jsdoc',
      'js-templates',
      'json',
      'json5',
      'jsx',
      'kotlin',
      'latex',
      'less',
      'markdown',
      'markup',
      'perl',
      'php',
      'phpdoc',
      'powershell',
      'python',
      'rust',
      'sass',
      'scheme',
      'scss',
      'sql',
      'tsx',
      'vim',
      'xml-doc',
      'yaml'
    ],
    plugins: [
      // 行高亮
      'line-highlight',
      // 显示行号
      'line-numbers',
      // JSON 高亮
      'jsonp-highlight',
      // 突出关键词
      'highlight-keywords',
      // 删除初始换行符
      'remove-initial-line-feed',
      // 自定义类
      'custom-class',
      // 树视图
      'treeview'
    ],
    theme: 'tomorrow', // 主题prism-tomorrow
    // css配置：默认是false，设置为true，主题才会生效
    css: true
  }) as PluginOption;
}
